package com.renjun.smweb.service.NoticeService;


import com.alibaba.fastjson.JSONObject;
import com.renjun.smweb.exceptions.BaseException;
import com.renjun.smweb.exceptions.BaseException;

import java.io.IOException;
import java.sql.SQLException;
import java.util.Map;

/**
 * Created by RenJun on 2017/2/21.
 * 公告管理接口
 */
public interface NoticeService {

    /**
     * 查询公告/公告列表
     * @param params
     * @return
     * @throws BaseException
     */
    JSONObject queryNotice(Map<String,Object> params) throws BaseException, SQLException, IOException;

    /**
     * 添加公告/新增公告
     * @param params
     * @return
     * @throws BaseException
     */
    JSONObject addNoticeForCity(Map<String,Object> params) throws BaseException, SQLException;

    /**
     *修改公告/公告修改
     * @param params
     * @return
     * @throws BaseException
     */
    JSONObject modifyNotice(Map<String,Object> params) throws BaseException, SQLException;

    /**
     * 恢复公告
     * @param params
     * @return
     * @throws BaseException
     * @throws SQLException
     */
    JSONObject recoverNotice(Map<String,Object> params) throws BaseException, SQLException;

    /**
     * 删除公告/注销公告
     * @param params
     * @return
     * @throws BaseException
     */
    JSONObject cancelNotice(Map<String,Object> params) throws BaseException, SQLException;

    /**
     * 查看公告/公告详情
     * @param params
     * @return
     */
    JSONObject getNotice(Map<String,Object> params) throws BaseException, SQLException, IOException;

    JSONObject addNoticeForDistrict(Map<String, Object> params) throws BaseException, SQLException;

    /**
     * 首页市级公告列表
     * @param params
     * @return
     */
    JSONObject queryHomeNotice(Map<String,Object> params) throws IOException, SQLException;
}
